package com.kingdee.openimport.patch_service.service;

import com.kingdee.openimport.patch_service.enume.ErrorCode;
import com.kingdee.openimport.patch_service.enume.PatchType;
import com.kingdee.openimport.patch_service.exception.PatchException;
import com.kingdee.openimport.patch_service.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;

/**
 * 校验服务，提供对输入的版本信息等内容进行校验服务
 * Created by Niki on 2018/5/11 10:31
 */
public interface ICheckService {
    /**
     * 校验补丁的版本是否支持
     * @param type
     * @return
     * @throws PatchException
     */
    boolean checkType(String type) throws PatchException;

    /**
     * 校验补丁文件是否合法
     * @param file
     * @return
     * @throws PatchException
     */
    boolean checkFile(MultipartFile file) throws PatchException;

    /**
     * 校验版本是否存在
     * 首先查看最新版本，看是否与罪行版本一致
     * 然后再查看最近版本缓存，看是否存在其中
     * 再从数据库中查找是否有该版本记录
     * 还没有改版本记录，则补丁添加失败，没有找到对应的版本
     *
     * @param version
     * @return
     */
    boolean checkVersion(String version) throws PatchException;


}
